Validation groups that debug processors and chipsets face many challenges today. For example, an increasing emphasis on personal computer (PC) power management consumption has caused validation groups to debug processors and chipsets in the face of different power management schemes. Some of the processors and chipsets may contain explicit debug support in the silicon to enable debuggers to control asynchronous events, such as, e.g., power management transitions. Other processors and chipsets, however, may not contain the requisite debug support, and thus debuggers may not be able to control such asynchronous events, for example.
An In-Target Probe (ITP) is a software and hardware debug tool that may be used by validation and debug groups for processor and chipset validation. An ITP may enable a debugger to observe and control the execution of a program for debugging hardware and software, for example. The ITP may be used, for example, to validate a new microprocessor and to isolate system, compatibility and software problems. The ITP may plug into the Debug Port of what is known as a target system and provide control of that system. The ITP may also provide a graphical user interface, Joint Test Action Group (JTAG)/Debug Port access to the processor or chipset's debug features, full interrogation and control of the processor, access to the registers, memory, and Test Access Port (TAP), among several other CPU units.
If the processor or chipset does not contain explicit built-in debug support, the debugger, via the ITP, may not be able to reach a debug mode to conduct proper validation. As a result, debugging may become more problematic in the face of different power management schemes because the inability to transition between power management modes may cause the ITP to become ineffective.
Even if the processor or chipset does contain explicit built-in debug support, the debugger, via the ITP, may need to control asynchronous transitions between power management modes to prevent the transmission of invalid data, for example, from a target system to a host system.